<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>Document</title>
  </head>
  <body>
    <script>
      function Star(uame, age) {
        this.uame = uame;
        this.age = age;
      }
      // 很多情况瞎 需要手动利用constructor 指回原来的构造函数
      //   Star.prototype.sing = function () {
      //     console.log(111);
      //   };
      //   Star.prototype.movie = function () {
      //     console.log(222);
      //   };
      // 如果修改了原来的原型对象, 给原型对象赋值的时一个对象 则需要手动指回构造函数
      Star.prototype = {
        constructor: Star, // 需要手动指回构造函数
        sing: function () {
          console.log(111);
        },
        movie: function () {
          console.log(222);
        },
      };
      var ldh = new Star("刘德华", 18);
      var zxy = new Star("张学友", 18);
      console.log(Star.prototype);
      console.log(ldh.__proto__);
      console.log(Star.prototype.constructor);
      console.log(ldh.__proto__.constructor);
    </script>
  </body>
</html>
